When applications are entirely independent from one another, the modification, reconfiguration or other change in state of one application does not affect the ability to execute another independent application. For instance, some applications may have no required facilities in common, and therefore may be immune to the other executing application's failure.
Commonly, application dependencies exist in various forms. For instance, a reconfiguration of one application may affect another application that exchanges information with the reconfigured application or that includes a call to the reconfigured application. As another example, the failure of an application may affect the ability of a calling application to complete its execution. Thus, application dependencies may take a variety of forms such that the failure, modification or reconfiguration of one application affects the ability to execute another dependent application. As a result, it is often necessary to restart the applications that are dependent upon a failed, modified, or reconfigured application in order to achieve system functionality. Of course, the restarting of the dependent applications may further require restarting other applications that are dependent upon the newly restarted applications. Accordingly, application dependencies can be complex.